main_tip = """**************************************************
欢迎使用[名片管理系统]V1.0

1.新建名片
2.显示名片
3.查询名片

0.退出系统
**************************************************
"""

card_list = [
    ["沙务净", "13588886666", "888666","shawujing@163.com"],
    ["唐三葬", "13866669999", "666999","sanzang@163.com"],
]
def create_card():
    """
    创建名片，并加入到列表
    """
    print("新建名片")
    name = input("请输入姓名：")
    phone = input("请输入电话：")
    qq = input("请输入QQ：")
    email = input("请输入邮箱：")
    card = [name, phone, qq, email]
    card_list.append(card)
    print("添加【%s】的名片成功" % name)


def show_all():
    """
    显示所有名片
    """
    print("显示所有名片：")
    for name in ["姓名", "电话", "QQ", "邮箱"]:
        print(name, end="\t\t")
    print("")
    for card in card_list:
        print("%s\t\t%s\t\t%s\t\t%s" % (card[0], card[1], card[2], card[3]))


def modify_card(card):
    '''
    修改名片
    :param card:
    :return:
    '''
    # 修改名片
    card[0] = input('请输入姓名:')
    card[1] = input('请输入电话:')
    card[2] = input('请输入QQ:')
    card[3] = input('请输入邮箱:')


def delete_card(card):
    '''
    删除名片
    :param card: 名片列表
    :return:
    '''
    card_list.remove(card)


def handle_card(card):
    '''
    处理名片
    :param card:
    :return:
    '''
    while True:
        type = int(input('请输入对名片的操作: 1.修改/ 2.删除/ 0.返回上一级:'))
        # 根据不同的type做判断
        if type == 1:
            # 修改
            modify_card(card)
            # 跳出循环
            break
        elif type == 2:
            # 删除
            delete_card(card)
            break
        elif type == 0:
            # 返回上一级
            break
        else:
            print('输入错误,请重新输入')


def query_card():
    print("查询名片")
    input_name = input("请输入要查询的姓名：")
    for card in card_list:
        if input_name == card[0]:
            print("找到了：", card)
            handle_card(card)
            break
    else:
        print("没有找到【%s】" % input_name)


while True:
    print(main_tip)
    type = int(input("请输入操作："))
    if type == 1:
        create_card()
    elif type == 2:
        show_all()
    elif type == 3:
        query_card()
    elif type == 0:
        print("退出系统")
        break
    else:
        print("输入错误，请重新输入")
